package day15;

/**
 * 单例模式
 * @author yyfei
 * 单例模式分为 懒汉模式、饿汉模式
 *
 */
public class SingletonMode {
	/**
	 * 饿汉模式
	 */
	//创建单例模式的对象
	private static SingletonMode instance=new SingletonMode();
	
	//创景静态的构造方法，不让该类可以实例化
	private SingletonMode() {}
	
	//获取单例模式对象
	public static SingletonMode getInstance() {
		return instance;
	}
	
	public void msg() {
		System.out.println("这是单例模式的对象");
	}
	
	/**
	 * 懒汉模式
	 */
	private static SingletonMode smm; //这点不忙赋值 极为懒汉模式，减小了系统的开销，线程不安全 
	//私有化构造方法
	//获取单例模式对象
	public static SingletonMode getSmm() {
		//判断单例对象是否存在
		if(smm==null) {
			smm=new SingletonMode();
		}
		return smm;
	}
	
	
	
	
	
	
}
